מבני נתונים מבחן מועד א' סמסטר חורף תשס"ו

Σχετικά έγγραφα
מבני נתונים מבחן מועד ב' סמסטר חורף תשס"ו

TECHNION - ISRAEL INSTITUTE OF TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE סמסטר אביב תשס"ו מס' סטודנט:

מבני נתונים מבחן מועד א' סמסטר אביב תשס"ו

מבחן מועד ב' בהצלחה! אנא קיראו היטב את ההוראות שלהלן: ודאו כי כל עמודי הבחינה נמצאים בידכם.

תורת הגרפים - סימונים

אלגוריתמים 1, סמסטר אביב 2017

מתמטיקה בדידה תרגול מס' 13

בחינה בסיבוכיות עמר ברקמן, ישי חביב מדבקית ברקוד

שדות תזכורת: פולינום ממעלה 2 או 3 מעל שדה הוא פריק אם ורק אם יש לו שורש בשדה. שקיימים 5 מספרים שלמים שונים , ראשוני. שעבורם

פתרון תרגיל מרחבים וקטורים. x = s t ולכן. ur uur נסמן, ur uur לכן U הוא. ur uur. ur uur

פתרון תרגיל 8. מרחבים וקטורים פרישה, תלות \ אי-תלות לינארית, בסיס ומימד ... ( ) ( ) ( ) = L. uuruuruur. { v,v,v ( ) ( ) ( ) ( )

חידה לחימום. כתבו תכappleית מחשב, המקבלת כקלט את M ו- N, מחליטה האם ברצוappleה להיות השחקן הפותח או השחקן השappleי, ותשחק כך שהיא תappleצח תמיד.

דף פתרונות 7 נושא: תחשיב הפסוקים: צורה דיסיונקטיבית נורמלית, מערכת קשרים שלמה, עקביות

logn) = nlog. log(2n

סיכום- בעיות מינימוםמקסימום - שאלון 806

מבני נתונים ואלגוריתמים תרגול #11

יסודות לוגיקה ותורת הקבוצות למערכות מידע (סמסטר ב 2012)

מבני נתונים (234218) 1

ל הזכויות שמורות לדפנה וסטרייך

כלליים זמן: S מחסנית, top(s) ראש המחסנית. (Depth First Search) For each unmarked DFS(v) / BFS(v) רקורסיבי. אלגוריתם :BFS

חורף תש''ע פתרון בחינה סופית מועד א'

לוגיקה ותורת הקבוצות אביבתשס ז מבחןסופי מועדב בהצלחה!

תשובות מלאות לבחינת הבגרות במתמטיקה מועד ג' תשע"ד, מיום 0/8/0610 שאלונים: 315, מוצע על ידי בית הספר לבגרות ולפסיכומטרי של אבירם פלדמן

אלגוריתמים בתורת הגרפים חלק ראשון

' 2 סמ ליגרת ןורתפ םיפרגה תרותב םימתירוגלא דדצ 1 : הלאש ןורתפ רבסה תורעה

I. גבולות. x 0. מתקיים L < ε. lim אם ורק אם. ( x) = 1. lim = 1. lim. x x ( ) הפונקציה נגזרות Δ 0. x Δx

רשימת בעיות בסיבוכיות

לוגיקה ותורת הקבוצות פתרון תרגיל בית 8 חורף תשע"ו ( ) ... חלק ראשון: שאלות שאינן להגשה נפריד למקרים:

3-9 - a < x < a, a < x < a

תרגיל 13 משפטי רול ולגראנז הערות

אלגברה לינארית (1) - פתרון תרגיל 11

השאלות..h(k) = k mod m

אלגברה ליניארית (1) - תרגיל 6

תרגול מס' 6 פתרון מערכת משוואות ליניארית

תכנון אלגוריתמים 2016 עבודה 1 שאלה 1 פתרון נתונות שתי בעיות. יש למצוא: אורך מסלול קצר ביותר המתחיל באחד מן הקודקודים s 1,..., s k ומסתיים ב t.

לדוגמה: במפורט: x C. ,a,7 ו- 13. כלומר בקיצור

תרגיל 7 פונקציות טריגונומטריות הערות

אלגוריתמים בתורת הגרפים חלק שני

חלק א' שאלה 3. a=3, b=2, k=0 3. T ( n) היותר H /m.

סדרות - תרגילים הכנה לבגרות 5 יח"ל

Logic and Set Theory for Comp. Sci.

( n) ( ) ( ) שאלה 1: שאלה 2: שאלה 3: (n 5) = Θ. ב. אם f 1, f 2, g 1, g 2. .g 1 *g 2 = Ω(f 1 *f 2 ) , g. ג. ) n.n! = θ(n*2. n) f ( אז ד. אם ה. אם ו.

תוכן הפרק: ,best case, average case דוגמאות 1. זמן - נמדד באמצעות מס' פעולות סיבוכיות, דוגמאות, שיפור בפקטור קבוע האלגוריתם. וגודלם. איטרטיביים. לקלט.

אלגברה לינארית מטריצות מטריצות הפיכות

. {e M: x e} מתקיים = 1 x X Y

= 2. + sin(240 ) = = 3 ( tan(α) = 5 2 = sin(α) = sin(α) = 5. os(α) = + c ot(α) = π)) sin( 60 ) sin( 60 ) sin(

אוסף שאלות מס. 3 פתרונות

צעד ראשון להצטיינות מבוא: קבוצות מיוחדות של מספרים ממשיים

אלגוריתמים / תרגיל #1

פתרון תרגיל 5 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד

מודלים חישוביים מבחן מועד א', סמסטר א' תשע''ה (2015)

מתמטיקה בדידה תרגול מס' 12

שאלה 1 V AB פתרון AB 30 R3 20 R

(2) מיונים השאלות. .0 left right n 1. void Sort(int A[], int left, int right) { int p;

מבני נתונים ואלגוריתמים תרגול #8-9

תרגול פעולות מומצאות 3

משוואות רקורסיביות רקורסיה זו משוואה או אי שוויון אשר מתארת פונקציה בעזרת ערכי הפונקציה על ארגומנטים קטנים. למשל: יונתן יניב, דוד וייץ

תורישק :תורישקה תייעבב בוש ןייענ?t- t ל s- s מ לולסמ שי םאה 2

אלגברה מודרנית פתרון שיעורי בית 6

gcd 24,15 = 3 3 =

השאלות ידי מצביעים לילדים.

לוגיקה ותורת הקבוצות פתרון תרגיל בית 4 אביב תשע"ו (2016)

2 יח"ל ) השלמה ל - 5 יח"ל) (50 נקודות) מעבר חוקי, ו-'שקר' אחרת.

[ ] Observability, Controllability תרגול 6. ( t) t t קונטרולבילית H למימדים!!) והאובז' דוגמא: x. נשתמש בעובדה ש ) SS rank( S) = rank( עבור מטריצה m

פרק 8: עצים. .(Tree) במשפטים הגדרה: גרף ללא מעגלים נקרא יער. דוגמה 8.1: תרגילים: הקודקודים 2 ו- 6 בדוגמה הוא ).

ניהול תמיכה מערכות שלבים: DFfactor=a-1 DFt=an-1 DFeror=a(n-1) (סכום _ הנתונים ( (מספר _ חזרות ( (מספר _ רמות ( (סכום _ ריבועי _ כל _ הנתונים (

סיכום חקירת משוואות מהמעלה הראשונה ומהמעלה השנייה פרק זה הינו חלק מסיכום כולל לשאלון 005 שנכתב על-ידי מאיר בכור

{ : Halts on every input}

אלגברה ליניארית 1 א' פתרון 2

פתרון תרגיל בית 6 מבוא לתורת החבורות סמסטר א תשע ז

סיכום בנושא של דיפרנציאביליות ונגזרות כיווניות

Trie מאפשר חיפוש, הכנסה, הוצאה, ומציאת מינימום (לקסיקוגרפי) של מחרוזות.

TECHNION Israel Institute of Technology, Faculty of Mechanical Engineering מבוא לבקרה (034040) גליון תרגילי בית מס 5 ציור 1: דיאגרמת הבלוקים

מתמטיקה בדידה תרגול מס' 5

מבני נתונים ויעילות אלגוריתמים

תאריך עדכון אחרון: 27 בפברואר ניתוח לשיעורין analysis) (amortized הוא טכניקה לניתוח זמן ריצה לסדרת פעולות, אשר מאפשר קבלת

חידה לחימום. כתבו תכנית שהקלט שלה הוא מספר שלם n,

הגדרה: קבוצת פעילויות חוקית היא קבוצה בה כל שתי פעילויות

אלגברה ליניארית 1 א' פתרון 7

תרגול 1 חזרה טורי פורייה והתמרות אינטגרליות חורף תשע"ב זהויות טריגונומטריות

דיאגמת פאזת ברזל פחמן

תאריך הבחינה: שם המרצה: רפי כהן שם המתרגל: יסודות מבני נתונים שם הקורס:

אלגברה ליניארית 1 א' פתרון 8

( )( ) ( ) f : B C היא פונקציה חח"ע ועל מכיוון שהיא מוגדרת ע"י. מכיוון ש f היא פונקציהאז )) 2 ( ( = ) ( ( )) היא פונקציה חח"ע אז ועל פי הגדרת

פרק 13 רקורסיה רקורסיה רקורסיה רקורסיות פשוטות: חישוב עצרת. תמונת המחסנית ב-() factorial רקורסיות פשוטות: פיבונאצ'י

דוגמה: יהי T עץ בינארי כפי שמתואר בציור הבא:

הגדרה: מצבים k -בני-הפרדה

"קשר-חם" : לקידום שיפור וריענון החינוך המתמטי

áùçîä éòãîì äîâîä ÌÈÏÈ ÂÁ

גרפים אלגוריתמים בתורת הגרפים הרצאה 1 גיא פלג 15 במרץ 2012 הגדרה: מגן דוגמאות: זוגות לא סדורים כיוון שבקבוצה סדר לא חשוב.

תרגול 8: מטלאב לולאות

ניתוח סיבוכיות - פונקציות רקורסיביות פיתוח טלסקופי

מודלים חישוביים תרגולמס 5

תורת המספרים 1 פירוק לגורמים ראשוניים סיכום הגדרות טענות ומשפטים אביב הגדרות 1.2 טענות

The No Arbitrage Theorem for Factor Models ג'רמי שיף - המחלקה למתמטיקה, אוניברסיטת בר-אילן

גבול ורציפות של פונקציה סקלרית שאלות נוספות

מיון. 1 מיון ערימה (Heapsort) חלק I 1.1 הגדרת ערימה 0.1 הגדרה של המושג מיון מסקנה: הערך הכי גבוה בערימה נמצא בשורש העץ!

מתמטיקה )שאלון שני לנבחנים בתכנית ניסוי, 5 יחידות לימוד( 1 מספרים מרוכבים 3#2 3 3

מתכנס בהחלט אם n n=1 a. k=m. k=m a k n n שקטן מאפסילון. אם קח, ניקח את ה- N שאנחנו. sin 2n מתכנס משום ש- n=1 n. ( 1) n 1

brookal/logic.html לוגיקה מתמטית תרגיל אלון ברוק

Transcript:

TECHNION - ISRAEL INSTITUTE OF TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE הטכניון - מכון טכנולוגי לישראל הפקולטה למדעי המחשב מרצים: רן אל-יניב, נאדר בשותי מבני נתונים 234218-1 מבחן מועד א' סמסטר חורף תשס"ו מתרגלים: אבי אופשנקו, לורנס בישת, איתן עזריאל, אמיר רובינשטיין שם משפחה: שם פרטי: מס' סטודנט: משך המבחן: שעתיים וחצי. - ברבע השעה האחרונה של המבחן לא נשיב על שאלות. - יש לענות על כל השאלות על טופס המבחן, במקומות המיועדים לכך. - חובה להקפיד על ניסוח וכתב ברורים. תשובות לא קריאות כלל לא תיבדקנה. - שימו לב: 20% מהניקוד של שאלה או סעיף יינתנו אם התשובה היחידה בסעיף זה היא "לא יודע/ת". - מותר להשתמש בכל חומר עזר לא אלקטרוני. - מותר להשתמש במשפטים ותוצאות המופיעים בחומר הרשמי של הקורס (חוברות התרגולים וההרצאות - באיזה משפט/תוצאה ללא הסבר נוסף בתנאי שיצוין מפורשות ופתרונות שפורסמו לתרגילי בית) משתמשים. במבחן זה, סיבוכיות (זמן,זיכרון) מתייחסת תמיד למקרה הגרוע, אלא אם כן נאמר מפורשות אחרת. - במבחן זה מותר להניח כי קריאה לפונקציה לצורך הקצאת זיכרון malloc) למשל) דורשת (1)O זמן, ללא קשר - לכמות הזיכרון שמקצים באמצעותה. 9 עמודים ממוספרים, כולל דף זה. וודאו כי כולם ברשותכם. בטופס זה - ב ה צ ל ח ה! ניקוד בודק שאלה 25 1 25 25 25 100 שאלה 2 שאלה 3 שאלה 4 סה"כ 1

שאלה (25 1 נקודות) יחידת המעקב של האו"ם רוצה לעקוב אחר מועדי הבחירות במדינות השונות בעולם. ידוע שיש בעולם N מדינות דמוקרטיות (בהן נערכות בחירות), המיוצגות ע"י האינדקסים 1 עד N. במדינה i מתקיימות בחירות באופן מחזורי כל D i ימים, כפי שמעוגן בחוקי אותה מדינה. למשל, בישראל עוברים 1424 ימים (4 שנים) בין ימי בחירות עוקבים.. D= max{ D i יהי } הציעו מבנה נתונים למימוש הפעולות הבאות בסיבוכיות הזמן הרשומה ליד כל פעולה. N ו- D אינם קבועים לצורכי ניתוח סיבוכיות. (1)O. סיבוכיות זמן: D. ו- N אתחול מבנה הנתונים עם הפרמטרים Init(N, (D days מציין D i ימים. days) Add_country(i, D i, הוספה למבנה של המדינה, i עם מחזור בחירות בן הערה: את מספר הימים שנותרו עד לבחירות הבאות במדינה i מיום ביצוע פעולה זו. הניחו ש- days הוא שלם המקיים < days D i 0. כמו כן הניחו כי המדינה i לא הוספה למבנה בעבר. סיבוכיות זמן: (1)O. Elections_today() הדפסת האינדקסים של כל המדינות שבהן נערכות בחירות ביום הפעלת הפונקציה. הניחו כי מתבצעת קריאה לפונקציה זו בדיוק פעם אחת בתחילת כל יום, כלומר זוהי הפעולה הראשונה על המבנה באותו יום. סיבוכיות זמן: O(k) כאשר k הוא מס' המדינות המודפסות. days) Predate_elections(i, הקדמה של מערכת הבחירות הקרובה של מדינה i ב- days ימים. הניחו כי (1)O. סיבוכיות זמן: i. הינו שלם חיובי שקטן ממספר הימים שנותרו עד לבחירות הקרובות במדינה days (באו"ם הבחינו שבמדינה קטנה כלשהי במזרח התיכון נוטים להקדים מערכות בחירות באופן תדיר, לכן דרושה פעולה זו). תארו מבנה נתונים מתאים, והסבירו כיצד מתבצעת כל פעולה. תאור מבנה הנתונים 2

הסבר מפורט על ביצוע הפעולות 3

שאלה (25 2 נקודות) הגדרה: מולטיגרף מכוון הינו גרף מכוון בו ייתכנו קשתות מקבילות ולולאות עצמיות. שאלה זו עוסקת באכסון ותחזוק של מולטיגרף מכוון ממושקל בן n צמתים. הציעו מבנה נתונים לביצוע הפעולות הבאות:.O(1) סיבוכיות זמן: Init(n) b ל- a הנחה: אין עדיין במבנה קשת מ- w. במשקל b לצומת a הוספת קשת מצומת AddEdge(a,b,w) במשקל w. סיבוכיות זמן: O(logm) (m הוא מספר הקשתות שיש כרגע בגרף). a אין קשתות בין אם ל- b. a הסרת הקשת הקלה ביותר מבין הקשתות שבין RemoveLightEdge(a,b) ל- b הפעולה לא מבצעת דבר. סיבוכיות זמן:.O(logm) (1)O. זמן: סיבוכיות ל- b. a בדיקה אם יש קשת בין IsConnected(a,b) MinimumSpanningTree() מציאת עץ פורש מינימלי של גרף התשתית (הגרסה הלא מכוונת של הגרף). הפעולה מדפיסה את קשתות העץ כרשימה של שלשות מהצורה,(a,b,w) כאשר a ו- b הם זוג צמתים בעץ הפורש המינימלי שיש בינהם קשת במשקל w. הערה: במימוש פעולה זו הניחו כי הגרף קשיר, כלומר שיש לו עץ פורש. סיבוכיות זמן: log*n).o(min(n 2, (m רמז: למציאת עץ פורש מינימלי של מולטיגרף מספיק להתייחס לגרף הפשוט שמכיל, לכל זוג צמתים, רק את הקשת המינימלית בינהם. סיבוכיות הזיכרון הנדרשת של כל מבנה הנתונים: (m+.o(n 2 תארו מבנה נתונים מתאים, הסבירו כיצד מתבצעת כל פעולה, ונמקו מדוע היא עומדת בדרישות סיבוכיות הזמן. תאור מבנה הנתונים 4

הסבר מפורט על ביצוע הפעולות ועמידה בדרישות הסיבוכיות של כל אחת מהן 5

שאלה (25 3 נקודות) נתונה מטריצה של מספרים שלמים עם m שורות ו- n עמודות, שכל שורה בה ממוינת בסדר עולה. אנו מעוניינים באלגוריתם להדפסת כל איברי המטריצה בסדר ממוין (עולה). n = 5 לדוגמא, בהינתן המטריצה הבאה: 3 5 12 13 50 m = 3 1 4 8 8 14 4 5 10 19 20 הפלט של האלגוריתם יהיה: 1 3 4 4 5 5 8 8 10 12 13 14 19 20 50 א. תארו אלגוריתם לפתרון הבעיה, הפועל בסיבוכיות זמן (m,o(m n log ומשתמש ב- O(m) זיכרון נוסף (כלומר בנוסף למטריצה הנתונה). הוכיחו כי האלגוריתם שלכם עומד בדרישות סיבוכיות הזמן והזיכרון. תאור האלגוריתם והוכחה כי הוא עומד בדרישות סיבוכיות הזמן והזיכרון 6

הניחו כי קיים אלגוריתם ל"מיזוג במקום" merging),(in-place כלומר: עבור שני מערכים ממוינים A ו- B בגדלים n A ו- n, B אלגוריתם זה ממזג אותם בסיבוכיות זמן ) B O(n A n+ וסיבוכיות זיכרון נוסף (1)O, כאשר הפלט מאוחסן באותם תאי הזיכרון של מערכי הקלט ) A n האיברים הקטנים מאוחסנים בתאי הזיכרון של המערך A, וייתר n B האיברים מאוחסנים ב- B). בסעיף זה מותר להשתמש באלגוריתם הנ"ל מבלי לממשו. ב. פתרו שוב את הבעיה מסעיף א', אלא שהפעם פתרונכם נדרש לעבוד בסיבוכיות זיכרון נוסף (1)O. הוכיחו כי האלגוריתם שלכם עומד בדרישות סיבוכיות הזמן והזיכרון. תאור האלגוריתם והוכחה כי הוא עומד בדרישות סיבוכיות הזמן והזיכרון 7

שאלה (25 4 נקודות) שימו לב שני הסעיפים בשאלה זו אינם קשורים זה לזה. השאלה עוסקת במחרוזות מעל א"ב סופי Σ. שתי מחרוזות א. הן s 2 ו- s 1 הזזה ציקלית אחת של השנייה, קיים אם 2 i m, i s 1 = a 1 a 2 a m של השנייה. ו- כך שמתקיים: i-1.s 2 = a i a i+1 a m a 1 a למשל, המחרוזות game ו- mega הן הזזה ציקלית אחת תארו אלגוריתם המקבל כקלט שתי מחרוזות s 1 ו- s 2 באורך m כל אחת ) 2,(s 1 s ומכריע אם הן הזזה ציקלית אחת של השנייה בסיבוכיות זמן.O(m) אין צורך לבדוק את תקינות הקלט. רמז: בנו מ- s 1 מחרוזת חדשה.s 1 ' ' 1 s כך ש- s 2 היא תת-מחרוזת של תאור האלגוריתם 8

ב. ממשו את הפעולות הבאות המגדירות מבנה נתונים לטיפול במחרוזות: (1)O. אתחול מבנה הנתונים. סיבוכיות זמן: Init().O( s ) למבנה. סיבוכיות זמן: s הוספת המחרוזת AddString(s).O( s ) מהמבנה. סיבוכיות זמן: s הוצאת המחרוזת RemoveString(s) IsConcatenation(s) בדיקה האם המחרוזת s הינה שרשור של שתי מחרוזות שנמצאות במבנה. סיבוכיות זמן:.O( s ) תארו את מבנה הנתונים והסבירו כיצד מתבצעת כל פעולה. תאור מבנה הנתונים וביצוע הפעולות 9